The present specification relates to the field of exposing object oriented software services to external processes.
Some software applications utilize self-contained software entities known as objects in accomplishing tasks. Software objects can be configured to store data and executable code related to defined processes that can be invoked to manipulate the stored data. Typically, objects are individual instances of one or more object classes (i.e. templates) that define the types of data and processes stored by each object of that class.
One of the perceived advantages of object-oriented software is the versatility with which objects may be defined for a particular application. In some situations, software operations can be streamlined by manipulating custom objects that are defined according to the particular processing needs and end goals of the software, thereby increasing overall operating efficiency.
Often, it can be desirable to allow external systems and/or processes access to services provided by object-oriented software. With the advent of computer networking, object oriented software run by corporations or other larger-scale entities has increasingly been used to expose services to external processes on networked devices. For example, an object-oriented application running on a first system can receive data and/or other parameters provided by external processes over the internet and use the received data to manipulate stored objects according to a service requested by the external process.